package com.teatrace.service;

import java.util.List;
import java.util.Set;

import javax.jws.WebService;

import com.teatrace.model.AntiFakeCode;

@WebService
public interface AntiFakeService {

	/**
	 * 生成一批验证码并存入数据库，但并没有应用到验证环境中
	 * @param count 生产的个数
	 * @param pattern 验证码的模式，如果为空字串则无模式
	 */
	public void generateAndSaveIntoDB(int count, String pattern);
	
	/**
	 * 在验证环境中正式应用一批验证码，通常是在打印的时候提交应用，
	 * 打印的同时，修改一些验证码作为已经打印并应用进验证系统中，
	 * 使客户可以通过该此打印的验证码验证商品的真伪。<br>
	 * 
	 * 通常此方法的事务将开致打印成功后才关闭，否则在打印过程中如
	 * 果出现失误或错误将很难挽回应用情况
	 * 
	 * @param count 应用多少个
	 * @return 返回应用的验证码集合，以便打印
	 */
	public List<AntiFakeCode> apply(int count);
	
	/**
	 * 根据验证码获取验证码实体的信息
	 * @param code
	 * @return
	 */
	public AntiFakeCode get(String code);

	
	
	
}
